package com.mo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 车辆信息表，用于存储停车场中每辆车的详细信息，包括车牌号、车主信息、车辆状态和停放情况
 * @TableName vehicle
 */
@TableName(value ="vehicle")
@Data
public class Vehicle implements Serializable {
    /**
     * 车辆ID，自动增长字段，唯一标识每辆车
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 车牌号，最大长度20字符，唯一，确保每辆车有唯一的车牌号
     */
    private String plateNumber;

    /**
     * 停车位ID，关联到停车位表的ID，指示车辆占用了哪个停车位
     */
    private Integer parkingSpaceId;

    /**
     * 车辆入场时间，记录车辆进入停车场的时间
     */
    private Date entryTime;

    /**
     * 车辆离场时间，记录车辆离开停车场的时间
     */
    private Date exitTime;

    /**
     * 最后更新时间，自动更新时间戳
     */
    private Date lastUpdated;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}